package com.zenithmind.chat.pojo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * AI对话VO
 */
@Data
@Schema(description = "AI对话VO")
public class AiChatVO {
    
    @Schema(description = "对话ID")
    private String id;
    
    @Schema(description = "用户ID")
    private String userId;
    
    @Schema(description = "对话标题")
    private String title;
    
    @Schema(description = "模型类型(1-OpenAI,2-Ollama,3-Azure,4-Anthropic,5-自定义)")
    private Integer modelType;
    
    @Schema(description = "模型名称")
    private String modelName;
    
    @Schema(description = "系统提示词")
    private String systemPrompt;
    
    @Schema(description = "状态(0-禁用,1-启用)")
    private Integer status;
    
    @Schema(description = "总token数")
    private Integer totalTokens;
    
    @Schema(description = "最后对话时间")
    private LocalDateTime lastChatTime;
    
    @Schema(description = "对话次数")
    private Integer chatCount;
    
    @Schema(description = "是否收藏(0-否,1-是)")
    private Integer isFavorite;
    
    @Schema(description = "标签列表")
    private List<String> tags;
    
    @Schema(description = "共享类型(0-私有,1-公开,2-指定用户)")
    private Integer shareType;
    
    @Schema(description = "共享用户ID列表")
    private List<String> sharedUserIds;
    
    @Schema(description = "是否置顶(0-否,1-是)")
    private Integer isTop;
    
    @Schema(description = "置顶时间")
    private LocalDateTime topTime;
    
    @Schema(description = "温度值(影响随机性,0.0-2.0)")
    private Float temperature;
    
    @Schema(description = "最大生成token数")
    private Integer maxTokens;
    
    @Schema(description = "创建时间")
    private LocalDateTime createTime;
} 